package com.example.demo.vo;

import com.example.demo.domain.base.BaseEntity;

import java.io.Serializable;

/**
 * @author Jack
 * @Title: vo父类
 * @Description: vo父类
 * @date 2018年1月7日14:35:34
 */
// E代表Entity;V代表Vo
public abstract class BaseVo<E extends BaseEntity, V extends BaseVo> implements Serializable {

    /* vo转换成Entity */
    protected abstract E convert();

    /* Entity转换成Vo */
    protected abstract V convert(E e);


    /**
     * 实体的状态
     **/
    private Integer status;

    /**
     * 创建的时间
     **/
    private Long createTime;

    /**
     * 修改时间
     **/
    private Long lastModifyTime;

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public Long getLastModifyTime() {
        return lastModifyTime;
    }

    public void setLastModifyTime(Long lastModifyTime) {
        this.lastModifyTime = lastModifyTime;
    }
}
